const redis = require('redis');

// 创建客户端
const client = redis.createClient({
  socket: {
    host: process.env.REDIS_HOST || '127.0.0.1',
    port: parseInt(process.env.REDIS_PORT || '6379')
  }
});

// 连接 Redis
client.on('error', (err) => {
  console.error('Redis连接错误:', err);
});

// 使用 async/await 模式
const connectClient = async () => {
  if (!client.isOpen) {
    await client.connect();
  }
};

module.exports = {
  // 获取缓存
  getCache: async (key) => {
    await connectClient();
    const value = await client.get(key);
    return value;
  },

  // 设置缓存（带过期时间）
  setCache: async (key, value, ttl) => {
    await connectClient();
    await client.setEx(key, ttl, value);
  }
};